home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Workbench Add-On
/
Workbench Add-On - Volume 1.iso
/
Util
/
Archiver
/
GZip
/
GNU
/
man
/
cat1
/
zcat.0
< prev
next >
Wrap
Text File
|
1993-12-07
|
19KB
|
463 lines
GZIP(1) GZIP(1)
NNAAMMEE
gzip, gunzip, zcat - compress or expand files
SSYYNNOOPPSSIISS
ggzziipp [ --aaccddffhhllLLnnNNrrttvvVV1199 ] [--SS ssuuffffiixx] [ _n_a_m_e _._._. ]
gguunnzziipp [ --aaccffhhllLLnnNNrrttvvVV ] [--SS ssuuffffiixx] [ _n_a_m_e _._._. ]
zzccaatt [ --ffhhLLVV ] [ _n_a_m_e _._._. ]
DDEESSCCRRIIPPTTIIOONN
_G_z_i_p reduces the size of the named files using Lempel-Ziv
coding (LZ77). Whenever possible, each file is replaced
by one with the extension ..ggzz,, while keeping the same own-
ership modes, access and modification times. (The default
extension is --ggzz for VMS, zz for MSDOS, OS/2 FAT, Windows
NT FAT and Atari.) If no files are specified, or if a
file name is "-", the standard input is compressed to the
standard output. _G_z_i_p will only attempt to compress regu-
lar files. In particular, it will ignore symbolic links.
If the compressed file name is too long for its file sys-
tem, _g_z_i_p truncates it. _G_z_i_p attempts to truncate only
the parts of the file name longer than 3 characters. (A
part is delimited by dots.) If the name consists of small
parts only, the longest parts are truncated. For example,
if file names are limited to 14 characters, gzip.msdos.exe
is compressed to gzi.msd.exe.gz. Names are not truncated
on systems which do not have a limit on file name length.
By default, _g_z_i_p keeps the original file name and times-
tamp in the compressed file. These are used when decom-
pressing the file with the --NN option. This is useful when
the compressed file name was truncated or when the time
stamp was not preserved after a file transfer.
Compressed files can be restored to their original form
using _g_z_i_p _-_d or _g_u_n_z_i_p or _z_c_a_t_. If the original name
saved in the compressed file is not suitable for its file
system, a new name is constructed from the original one to
make it legal.
_g_u_n_z_i_p takes a list of files on its command line and
replaces each file whose name ends with .gz, -gz, .z, -z,
_z or .Z and which begins with the correct magic number
with an uncompressed file without the original extension.
_g_u_n_z_i_p also recognizes the special extensions ..ttggzz and
..ttaazz as shorthands for ..ttaarr..ggzz and ..ttaarr..ZZ respectively.
When compressing, _g_z_i_p uses the ..ttggzz extension if neces-
sary instead of truncating a file with a ..ttaarr extension.
_g_u_n_z_i_p can currently decompress files created by _g_z_i_p_,
_z_i_p_, _c_o_m_p_r_e_s_s_, _c_o_m_p_r_e_s_s _-_H or _p_a_c_k_. The detection of the
input format is automatic. When using the first two for-
mats, _g_u_n_z_i_p checks a 32 bit CRC. For _p_a_c_k_, _g_u_n_z_i_p checks
the uncompressed length. The standard _c_o_m_p_r_e_s_s format was
local 1
GZIP(1) GZIP(1)
not designed to allow consistency checks. However _g_u_n_z_i_p
is sometimes able to detect a bad .Z file. If you get an
error when uncompressing a .Z file, do not assume that the
.Z file is correct simply because the standard _u_n_c_o_m_p_r_e_s_s
does not complain. This generally means that the standard
_u_n_c_o_m_p_r_e_s_s does not check its input, and happily generates
garbage output. The SCO compress -H format (lzh compres-
sion method) does not include a CRC but also allows some
consistency checks.
Files created by _z_i_p can be uncompressed by gzip only if
they have a single member compressed with the 'deflation'
method. This feature is only intended to help conversion
of tar.zip files to the tar.gz format. To extract zip
files with several members, use _u_n_z_i_p instead of _g_u_n_z_i_p_.
_z_c_a_t is identical to _g_u_n_z_i_p --cc.. (On some systems, _z_c_a_t
may be installed as _g_z_c_a_t to preserve the original link to
_c_o_m_p_r_e_s_s_._) _z_c_a_t uncompresses either a list of files on
the command line or its standard input and writes the
uncompressed data on standard output. _z_c_a_t will uncom-
press files that have the correct magic number whether
they have a ..ggzz suffix or not.
_G_z_i_p uses the Lempel-Ziv algorithm used in _z_i_p and PKZIP.
The amount of compression obtained depends on the size of
the input and the distribution of common substrings. Typ-
ically, text such as source code or English is reduced by
60-70%. Compression is generally much better than that
achieved by LZW (as used in _c_o_m_p_r_e_s_s), Huffman coding (as
used in _p_a_c_k), or adaptive Huffman coding (_c_o_m_p_a_c_t).
Compression is always performed, even if the compressed
file is slightly larger than the original. The worst case
expansion is a few bytes for the gzip file header, plus 5
bytes every 32K block, or an expansion ratio of 0.015% for
large files. Note that the actual number of used disk
blocks almost never increases. _g_z_i_p preserves the mode,
ownership and timestamps of files when compressing or
decompressing.
OOPPTTIIOONNSS
--aa ----aasscciiii
Ascii text mode: convert end-of-lines using local
conventions. This option is supported only on some
non-Unix systems. For MSDOS, CR LF is converted to
LF when compressing, and LF is converted to CR LF
when decompressing.
--cc ----ssttddoouutt ----ttoo--ssttddoouutt
Write output on standard output; keep original
files unchanged. If there are several input files,
the output consists of a sequence of independently
local 2
GZIP(1) GZIP(1)
compressed members. To obtain better compression,
concatenate all input files before compressing
them.
--dd ----ddeeccoommpprreessss ----uunnccoommpprreessss
Decompress.
--ff ----ffoorrccee
Force compression or decompression even if the file
has multiple links or the corresponding file
already exists, or if the compressed data is read
from or written to a terminal. If the input data is
not in a format recognized by _g_z_i_p_, and if the
option --stdout is also given, copy the input data
without change to the standard ouput: let _z_c_a_t
behave as _c_a_t_. If --ff is not given, and when not
running in the background, _g_z_i_p prompts to verify
whether an existing file should be overwritten.
--hh ----hheellpp
Display a help screen and quit.
--ll ----lliisstt
For each compressed file, list the following
fields:
compressed size: size of the compressed file
uncompressed size: size of the uncompressed
file
ratio: compression ratio (0.0% if unknown)
uncompressed_name: name of the uncompressed
file
The uncompressed size is given as -1 for files not
in gzip format, such as compressed .Z files. To get
the uncompressed size for such a file, you can use:
zcat file.Z | wc -c
In combination with the --verbose option, the fol-
lowing fields are also displayed:
method: compression method
crc: the 32-bit CRC of the uncompressed data
date & time: time stamp for the uncompressed
file
The compression methods currently supported are
deflate, compress, lzh (SCO compress -H) and pack.
The crc is given as ffffffff for a file not in gzip
format.
With --name, the uncompressed name, date and time
are those stored within the compress file if
local 3
GZIP(1) GZIP(1)
present.
With --verbose, the size totals and compression
ratio for all files is also displayed, unless some
sizes are unknown. With --quiet, the title and
totals lines are not displayed.
--LL ----lliicceennssee
Display the _g_z_i_p license and quit.
--nn ----nnoo--nnaammee
When compressing, do not save the original file
name and time stamp by default. (The original name
is always saved if the name had to be truncated.)
When decompressing, do not restore the original
file name if present (remove only the _g_z_i_p suffix
from the compressed file name) and do not restore
the original time stamp if present (copy it from
the compressed file). This option is the default
when decompressing.
--NN ----nnaammee
When compressing, always save the original file
name and time stamp; this is the default. When
decompressing, restore the original file name and
time stamp if present. This option is useful on
systems which have a limit on file name length or
when the time stamp has been lost after a file
transfer.
--qq ----qquuiieett
Suppress all warnings.
--rr ----rreeccuurrssiivvee
Travel the directory structure recursively. If any
of the file names specified on the command line are
directories, _g_z_i_p will descend into the directory
and compress all the files it finds there (or
decompress them in the case of _g_u_n_z_i_p ).
--SS ..ssuuff ----ssuuffffiixx ..ssuuff
Use suffix .suf instead of .gz. Any suffix can be
given, but suffixes other than .z and .gz should be
avoided to avoid confusion when files are trans-
ferred to other systems. A null suffix forces gun-
zip to try decompression on all given files
regardless of suffix, as in:
gunzip -S "" * (*.* for MSDOS)
Previous versions of gzip used the .z suffix. This
was changed to avoid a conflict with _p_a_c_k(1)_.
local 4
GZIP(1) GZIP(1)
--tt ----tteesstt
Test. Check the compressed file integrity.
--vv ----vveerrbboossee
Verbose. Display the name and percentage reduction
for each file compressed or decompressed.
--VV ----vveerrssiioonn
Version. Display the version number and compilation
options then quit.
--## ----ffaasstt ----bbeesstt
Regulate the speed of compression using the speci-
fied digit _#, where --11 or ----ffaasstt indicates the
fastest compression method (less compression) and
--99 or ----bbeesstt indicates the slowest compression
method (best compression). The default compression
level is --66 (that is, biased towards high compres-
sion at expense of speed).
AADDVVAANNCCEEDD UUSSAAGGEE
Multiple compressed files can be concatenated. In this
case, _g_u_n_z_i_p will extract all members at once. For exam-
ple:
gzip -c file1 > foo.gz
gzip -c file2 >> foo.gz
Then
gunzip -c foo
is equivalent to
cat file1 file2
In case of damage to one member of a .gz file, other mem-
bers can still be recovered (if the damaged member is
removed). However, you can get better compression by com-
pressing all members at once:
cat file1 file2 | gzip > foo.gz
compresses better than
gzip -c file1 file2 > foo.gz
If you want to recompress concatenated files to get better
compression, do:
gzip -cd old.gz | gzip > new.gz
If a compressed file consists of several members, the
uncompressed size and CRC reported by the --list option
applies to the last member only. If you need the
local 5
GZIP(1) GZIP(1)
uncompressed size for all members, you can use:
gzip -cd file.gz | wc -c
If you wish to create a single archive file with multiple
members so that members can later be extracted indepen-
dently, use an archiver such as tar or zip. GNU tar sup-
ports the -z option to invoke gzip transparently. gzip is
designed as a complement to tar, not as a replacement.
EENNVVIIRROONNMMEENNTT
The environment variable GGZZIIPP can hold a set of default
options for _g_z_i_p_. These options are interpreted first and
can be overwritten by explicit command line parameters.
For example:
for sh: GZIP="-8v --name"; export GZIP
for csh: setenv GZIP "-8v --name"
for MSDOS: set GZIP=-8v --name
On Vax/VMS, the name of the environment variable is
GZIP_OPT, to avoid a conflict with the symbol set for
invocation of the program.
SSEEEE AALLSSOO
znew(1), zcmp(1), zmore(1), zforce(1), gzexe(1), zip(1),
unzip(1), compress(1), pack(1), compact(1)
DDIIAAGGNNOOSSTTIICCSS
Exit status is normally 0; if an error occurs, exit status
is 1. If a warning occurs, exit status is 2.
Usage: gzip [-cdfhlLnNrtvV19] [-S suffix] [file ...]
Invalid options were specified on the command
line.
_f_i_l_e: not in gzip format
The file specified to _g_u_n_z_i_p has not been com-
pressed.
_f_i_l_e_: Corrupt input. Use zcat to recover some data.
The compressed file has been damaged. The data up
to the point of failure can be recovered using
zcat file > recover
_f_i_l_e: compressed with _x_x bits, can only handle _y_y bits
_F_i_l_e was compressed (using LZW) by a program that
could deal with more _b_i_t_s than the decompress code
on this machine. Recompress the file with gzip,
which compresses better and uses less memory.
_f_i_l_e: already has .gz suffix -- no change
The file is assumed to be already compressed.
Rename the file and try again.
_f_i_l_e already exists; do you wish to overwrite (y or n)?
Respond "y" if you want the output file to be
replaced; "n" if not.
gunzip: corrupt input
A SIGSEGV violation was detected which usually
local 6
GZIP(1) GZIP(1)
means that the input file has been corrupted.
_x_x_._x_%
Percentage of the input saved by compression.
(Relevant only for --vv and --ll.)
-- not a regular file or directory: ignored
When the input file is not a regular file or
directory, (e.g. a symbolic link, socket, FIFO,
device file), it is left unaltered.
-- has _x_x other links: unchanged
The input file has links; it is left unchanged.
See _l_n(1) for more information. Use the --ff flag to
force compression of multiply-linked files.
CCAAVVEEAATTSS
When writing compressed data to a tape, it is generally
necessary to pad the output with zeroes up to a block
boundary. When the data is read and the whole block is
passed to _g_u_n_z_i_p for decompression, _g_u_n_z_i_p detects that
there is extra trailing garbage after the compressed data
and emits a warning by default. You have to use the
--quiet option to suppress the warning. This option can be
set in the GGZZIIPP environment variable as in:
for sh: GZIP="-q" tar -xfz --block-compress /dev/rst0
for csh: (setenv GZIP -q; tar -xfz --block-compr
/dev/rst0
In the above example, gzip is invoked implicitly by the -z
option of GNU tar. Make sure that the same block size (-b
option of tar) is used for reading and writing compressed
data on tapes. (This example assumes you are using the
GNU version of tar.)
BBUUGGSS
The --list option reports incorrect sizes if they exceed 2
gigabytes. The --list option reports sizes as -1 and crc
as ffffffff if the compressed file is on a non seekable
media.
In some rare cases, the --best option gives worse compres-
sion than the default compression level (-6). On some
highly redundant files, _c_o_m_p_r_e_s_s compresses better than
_g_z_i_p_.
local 7